<!DOCTYPE html>
<html lang="en">

  <head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>String练习</title>
  </head>

  <body>

  </body>
  <script>
    /* 
     给定一个字符串，如：“abaasdffggghhjjkkgfddsssss3444343”，问题如下： 
      1、 字符串的长度 
      2、 取出指定位置的字符，如：0,3,5,9等 
      3、 查找指定字符是否在以上字符串中存在，如：i，c ，b等 
      4、 替换指定的字符，如：g替换为22,ss替换为b等操作方法 
      5、 截取指定开始位置到结束位置的字符串，如：取得1-5的字符串
      6、 找出以上字符串中出现次数最多的字符和出现的次数 
      7、 遍历字符串，并将遍历出的字符两头添加符号“@”
    */
    var str = "abaasdffggghhjjkkgfddsssss3444343";
    /* //1.字符串的长度 
    console.log(str.length); //33
    //2.取出指定位置的字符，如：0,3,5,9等 
    console.log(str.charAt(0)); //a
    console.log(str.charAt(3)); //a
    console.log(str.charAt(5)); //d
    console.log(str.charAt(9)); //g
    //3.查找指定字符是否在以上字符串中存在，如：i，c ，b等 
    for (let i = 0; i < str.length; i++) {
      //console.log(str.indexOf('i'));
      if (str.indexOf('i') !== -1) {
        console.log('i' + "存在于字符串中" + i);
      }
      //console.log(str.indexOf('c'));
      if (str.indexOf('c') !== -1) {
        console.log('c' + "存在于字符串中" + i);
      }
      //console.log(str.indexOf('b'));
      if (str.indexOf('b') !== -1) {
        console.log('b' + "存在于字符串中" + i);
        braek;
      }
    } 
    //4.替换指定的字符，如：g替换为22,ss替换为b等操作方法 
    console.log(str);
    //var pos = str.indexOf('g');
    str = str.replaceAll('g', '22');
    console.log(str);


    //5.截取指定开始位置到结束位置的字符串，如：取得1-5的字符串
    var newStr = str.substring(1, 5);
    console.log(newStr);

    //6.找出以上字符串中出现次数最多的字符和出现的次数 
   
    var obj = {};
    for (let i = 0; i < str.length; i++) {
      var chars = str.charAt(i);
      if (obj[chars]) {
        obj[chars]++;
      } else {
        obj[chars] = 1;
      }
    }
    //console.log(obj);
    var max = 0;
    var c = ''
    for (k in obj) {
      if (obj[k] >= max) {
        max = obj[k];
        c = k;
      }
    }
    console.log("字符串中出现的最多的字符是" + c + "次数是" + max);

     */

    //7.遍历字符串，并将遍历出的字符两头添加符号“@”
    var newStr = '';
    for (let i = 0; i < str.length; i++) {
      if (i == 0) {
        newStr += "@" + str.charAt(i);
      } else if (i == str.length - 1) {
        newStr += str.charAt(i) + "@";
      } else {
        newStr += str.charAt(i);
      }
    }
    console.log(newStr);
  </script>

</html>